package zhu.yu.OOP_abstract_class.接口.基础父类并实现多个接口;
/*
使用接口的时候，需要注意：

1. 接口是没有静态代码块，或者构造方法
2. 一个类的直接父类是唯一的,但是一个类可以同时实现多个接口
格式:
public class MyInterfaceImpl implements MyInterface1, MyInterface2 {
   重写所有抽象方法
}
3. 如果实现类所重写的接口抽象方法重名，只需要重写方法一次即可
4. 如果接口实现类没有重写所有接口当中的所有抽象方法，那么接口实现类就必须是个抽象类
如：public abstract class InterfaceAbstract implements MyInterface1, MyInterface2 {}
5. 如果接口实现类所实现的多个接口当中，存在重复的默认方法，那么接口实现类一定要对重复的方法进行重写（抽象类里面也一样）
6. 一个类如果直接父类当中的方法，和接口当中的默认方法产生了重名，优先有父类中的方法（java当中继承优先父类）
 */
public interface DemoInterface {

    // 错误写法 接口不能有静态代码块, 类可以有
//    static {
//
//    }

    // 错误写法 接口不能有构造方法, 类可以有
//    public DemoInterface() {
//    }


    public static void main(String[] args) {
        Zi zi = new Zi();
        zi.method();  // 父类方法  (父类优先于接口)
    }
}
